package com.nidu.demo.log.aop;

import java.lang.annotation.*;

/**
 * API访问日志注解
 * 用于标记需要记录API访问日志的方法
 *
 * @author auto
 */
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Inherited
public @interface ApiAccessLogging {
    
    /**
     * 操作模块
     */
    String operateModule() default "";
    
    /**
     * 操作名称
     */
    String operateName() default "";
    
    /**
     * 操作类型
     */
    int operateType() default 0;
    
    /**
     * 是否启用日志记录，默认为true
     */
    boolean enable() default true;
    
    /**
     * 是否记录请求参数，默认为true
     */
    boolean includeArgs() default true;
    
    /**
     * 是否记录响应结果，默认为true
     */
    boolean includeResult() default true;
}
